布局控制节点
布局控制节点用于排列内容。对于在使用 Kanzi 应用程序期间动态添加或移除的内容或者从外部来源(例如目录中的文件)加载的内容,布局控制节点尤其有用。
|
用网格布局 (Grid Layout) 节点排列表格中的项。
|
|
用堆栈布局 (Stack Layout) 节点将项相邻放置。 |
|
用流式布局 (Flow Layout) 节点将项排成行。
|
|
用轨迹布局 (Trajectory Layout) 节点将项沿轨迹排列。 |
|
用停靠布局 (Dock Layout) 节点将项沿布局两侧相对排列。
|
通用布局属性
要将项放到 Kanzi 应用程序中的合适位置,您可以使用这些变换类型:
- 布局变换是在应用布局通道前对项进行变换。
- 渲染变换是在应用布局通道后、渲染前对项进行变换。 Kanzi 在应用布局变换后应用渲染变换,不会影响布局计算。例如,这可以让您在布局中动画化节点,不会导致布局重新计算。
布局控制节点(例如堆栈布局 (Stack Layout) 和网格布局 (Grid Layout)节点)将自身的变换应用在所有直接子节点上,在直接子节点上考虑各自子节点、布局变换、边距和对齐来定义各自的布局。
- 对齐定义布局的重心。例如,将水平对齐 (Horizontal Alignment) 属性设为右对齐 (Right) 以使节点与父布局的右侧对齐。将对齐属性设为拉伸 (Stretch) 后,节点会拉伸至其父级布局的尺寸。布局内容拉伸 (Layout Content Stretch) 属性可用于指定布局如何处理其内容。
- 边距限制对象相对于其父级布局边框的间距。例如,设置水平边距 (Horizontal Margin) 属性来设置节点左右两侧相对于其父级布局的间距。
- 布局属性重写节点的边框尺寸。默认布局尺寸由节点尺寸基于其边框和边距定义。
例如,在 x 轴方向上设置的堆栈布局 (Stack Layout) 节点根据尺寸(边框)将其两个子节点相邻放置。使用布局宽度 (Layout Width) 属性可以重写边框的宽度:值小于节点尺寸时节点重叠,值大于节点尺寸时两个节点之间的间隔扩大。
所有布局任务完成后,Kanzi 应用父节点的最终变换。如屏幕 (Screen) 下的RootPage 节点是2D 视口 (Viewport 2D) 或2D 空节点 (Empty Node 2D),其布局有特殊规则。继承定义的屏幕尺寸,由布局属性定义除外。

